Some earlier Sun keyboards do not have arrow keys separate from the keypad keys. It is difficult to emulate the full EDT keypad and still retain use of the arrow keys on such keyboards.
The Sun Type 5 and other more recent Sun keyboards, however, do have separate arrow keys. This makes them candidates for setting up a reasonable EDT keypad emulation.
Depending upon the configuration of the version of X installed on your system, you may find the default X keynames for the keypad keys don't permit Emacs to interpret some or all the keypad keys as something other than arrow keys, numeric keys, <Home>, <PageUp>, etc. Both Sun and HP have been particularly guilty of making bizarre keysym assignments to the keypad keys.
In most cases, the X Windows command, xmodmap,
can be used to correct the problem. Here's a sample
.xmodmaprc file which
corrects this problem on one Sun workstation configuration using
an older SunOS release configured with a Sun Type 5 keyboard:
! File: .xmodmaprc
!
! Set up Sun Type 5 keypad for use with the GNU Emacs EDT Emulation
!
keycode 53 = KP_Divide
keycode 54 = KP_Multiply
keycode 57 = KP_Decimal
keycode 75 = KP_7
keycode 76 = KP_8
keycode 77 = KP_9
keycode 78 = KP_Subtract
keycode 97 = KP_Enter
keycode 98 = KP_4
keycode 99 = KP_5
keycode 100 = KP_6
keycode 101 = KP_0
keycode 105 = F24
keycode 119 = KP_1
keycode 120 = KP_2
keycode 121 = KP_3
keycode 132 = KP_Add
If edt-mapper.el does not recognize your keypad keys as unique keys, use the command ‘xmodmap -pke’ to get a listing of the actual key codes and the keysyms mapped to them and then generate you own custom .xmodmaprc similar to the one above.
Next, feed .xmodmaprc
to the xmodmap command and all the Sun Type 5 keypad
keys will now be configurable for the emulation of an LK-201
keypad (less the <,> key). In this example, the line
keycode 105 = F24
changes the X Windows name of the keypad <NumLock> key to be known internally as the <F24> key. Doing so permits it to be configured to behave as the <PF1> (<GOLD>) key.
The side effect of this change is that you will no longer have a <NumLock> key. If you are using other software under X which requires a <NumLock> key, then examine your keyboard and look for one you don't use and redefine it to be the <NumLock> key. Basically, you need to clear the <NumLock> key from being assigned as a modifier, assign it to the key of your choice, and then add it back as a modifier. (Unix for further help on how to do this.)